/*! \file opcodes.h
	\author HiddenSeeker
	
	Defines an opcodes for JVM
 */

#pragma once

#define ALOAD            ((unsigned char)0x19) 
#define GETFIELD         ((unsigned char)0xB4)
#define PUTFIELD         ((unsigned char)0xB5) 
#define INVOKEVIRTUAL    ((unsigned char)0xB6)
#define INVOKESPECIAL    ((unsigned char)0xB7)
#define INVOKESTATIC     ((unsigned char)0xB8)
#define INVOKEINTERFACE  ((unsigned char)0xB9)
#define JVMNEW           ((unsigned char)0xBB)
#define POP              ((unsigned char)0x57)
#define RETURN           ((unsigned char)0xB1) 
#define ARETURN          ((unsigned char)0xB0)
#define DUP              ((unsigned char)0x59)
#define CHECKCAST        ((unsigned char)0xC0)
#define ICONST_0         ((unsigned char)0x3)  
#define ICONST_1         ((unsigned char)0x4)  
#define BIPUSH           ((unsigned char)0x10)
#define ICONST_NULL      ((unsigned char)0x1)
#define ASTORE           ((unsigned char)0x3A)
#define LDC              ((unsigned char)0x12)
#define LDC_W			 ((unsigned char)0x13)
#define GOTO             ((unsigned char)0xA7)
#define IFNE             ((unsigned char)0x9A)

